// 导入vue
import Vue from 'vue'
// 1.下载对应版本的vuex，在src下新建文件夹store/index.js
// 2.导入vuex
import Vuex from 'vuex'
// 3.vuex也是vue的插件，需要use一下，进行插件的安装初始化
Vue.use(Vuex)

// 4.创建仓库store
const store = new Vuex.Store({
    //开启严格模式
    strict:process.env.NODE_ENV === 'development',
    // vuex的配置
    // state:状态  即数据state指的是vuex中的数据
    state:{
        money:1000,
        count:100,
        car:'劳斯莱斯',
    },
    mutations:{
        addMoney(state){
            state.money++
        },
        addMoreMoney(state,money){
            state.money += money
            //异步操作
            // setTimeout(() => {
            //     state.money += money  
            // }, 1000);
        },
        buyCar(state,{money,car}){
            state.money -= money
            state.car = car
        },
        doHair(state,money){
            state.money -= money
        }
    },
    actions:{
        //提供异步操作;context相当于store仓库
        doHairAsync(context,money){
            setTimeout(() => {
                context.commit('doHair',money)
            }, 1000);
        }
    }
})
// 5.导出仓库
export default store

// 6.到main.js中导入，并挂载到Vue实例上